﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace FrontEndPlus.Módulos.Administración
{
    public partial class wbfrm_Busqueda_Cliente_Clases : System.Web.UI.Page
    {
        #region Variables
        private WCF_Gimnasio.cls_Facturar _facturar = new WCF_Gimnasio.cls_Facturar();
        private WCF_Gimnasio.cls_Cliente _cliente = new WCF_Gimnasio.cls_Cliente();
        private WCF_Gimnasio.ServiceClient _servicio = new WCF_Gimnasio.ServiceClient();
        #endregion

        #region Metodos
        private void CargarClientes()
        {
            _cliente.IdUsuarioInicioSeccion = 6;//Convert.ToInt32(HttpContext.Current.Session["idUsuario"].ToString());           
            gv_clientes.DataSource = _servicio.Listar(1, _cliente);
            gv_clientes.DataBind();
            _servicio.Close();
            if (gv_clientes.Rows.Count <= 0)
                lbl_mensaje.Text = "NO HAY CLIENTES DISPONIBLES";
            else
                lbl_mensaje.Text = string.Empty;

        }
        private void retornaDatos(int fila)
        {
            if (fila > -1)
            {
                string id_cliente = gv_clientes.Rows[fila].Cells[0].Text;
                string cedula = gv_clientes.Rows[fila].Cells[1].Text;
                string nombre = gv_clientes.Rows[fila].Cells[2].Text;
                string apellido = gv_clientes.Rows[fila].Cells[3].Text;
                Response.Redirect("wbfrm_Clases_Horarios.aspx?&idCliente=" + id_cliente + "&cedCliente=" + cedula + "&nomCliente=" + nombre + "&apeCliente=" + apellido);
            }

        }
        private void filtraProductos(string filtro)
        {
            try
            {
                _cliente.IdUsuarioInicioSeccion = 6;//Convert.ToInt32(HttpContext.Current.Session["idUsuario"].ToString());             
                string[] arreglo = new string[2];
                arreglo[0] = "0";
                arreglo[1] = filtro;
                _cliente.Filtros = arreglo;
                gv_clientes.DataSource = _servicio.Listar(2, _cliente);
                gv_clientes.DataBind();
                _servicio.Close();
                if (gv_clientes.Rows.Count <= 0)
                    lbl_mensaje.Text = "NO HAY CLIENTES CON LOS DATOS SUMINISTRADOS";
                else
                    lbl_mensaje.Text = string.Empty;
            }
            catch (Exception ex) { Response.Write(ex.Message); }
        }
        #endregion

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                this.CargarClientes();

            }
        }

        protected void b_volver_Click(object sender, EventArgs e)
        {
            Response.Redirect("wbfrm_Clases_Horarios.aspx");
        }

        protected void txt_nombre_TextChanged(object sender, EventArgs e)
        {
            if (txt_nombre.Text != string.Empty)
                this.filtraProductos(txt_nombre.Text);
            else
                this.CargarClientes();
        }

        protected void gv_clientes_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int fila = Convert.ToInt32(e.CommandArgument);
            this.retornaDatos(fila);
        }
    }
}